/**
给你两个单链表的头节点 headA 和 headB ，请你找出并返回两个单链表相交的起始节点。
如果两个链表不存在相交节点，返回 null 
 */
function getIntersectionNode(headA, headB) {
  let l1 = headA
  let l2 = headB
  while(l1!==l2) {
    l1 = l1 ? l1.next : headB
    l2 = l2 ? l2.next : headA
  }
  return l1
}
const headA = [4,1,8,4,5]
const headB = [5,6,1,8,4,5]
console.log(getIntersectionNode(headA, headB))
/**
 * idea: 双指针
 * 一个指针指向headA，一个指针指向headB
 * 遍历链表，如果两个指针相遇，则返回相遇节点
 * 如果两个指针没有相遇，则返回null
 */